package fast.calc;

public class GearBuffData {
	public String name = "";
	public String type = "";
	public double ppm = 0;
	public String procs_of = "both";
	public boolean onlyCrit = false;
	public double icd = 0;
	public double duration = 0;
	public double stacks = 0;
	public double proc_chance = 1;
	public Procs proc;
	
	public boolean isPPM(){
		if(ppm > 0)
			return true;
		return false;
	}
	public boolean hasICD(){
		if(icd > 0)
			return true;
		return false;
	}
	public boolean hasDuration(){
		if(duration > 0)
			return true;
		return false;
	}
	public boolean hasStacks(){
		if(stacks > 0)
			return true;
		return false;
	}
	public boolean mh_only(){
		if(procs_of.equals("mh"))
			return true;
		return false;
	}
	public boolean oh_only(){
		if(procs_of.equals("oh"))
			return true;
		return false;
	}
	
	public boolean is_direct_dmg(){
		if(type.equals("direct_damage"))
			return true;
		return false;
	}
	
	public boolean is_buff(){
		if(type.equals("buff"))
			return true;
		return false;
	}
	public boolean onlyCrit(){
		return onlyCrit;
	}
	
	public Procs getProc(double uptime){
		return proc.scale(uptime);
	}
}
